1. Field of the Invention
The present invention relates generally to a laptop type or notebook type portable personal computer system, and, more particularly, a computer system capable of controlling the operation speed of a CPU to reduce consumed power.
2. Description of the Related Art
Recently, various laptop or notebook type personal portable computers have been developed which are easily portable and operable on battery power. To reduce wasteful consumed power, such a type of portable computer is equipped with a so-called CPU sleep mode function to automatically disable the CPU under a predetermined condition.
A conventional CPU sleep mode function is executed under the condition that no keyboard operation is performed by an operator for more than a given period of time.
More specifically, when an application program waits for a key input, INT16H of BIOS (Basic I/O System) is called and a keyboard control routine is executed. The BIOS's keyboard control routine causes the CPU to run a HALT command to stop executing a program when there is no keyboard input within a given period of time. When the system hardware detects the HALT cycle of the CPU, the system hardware lowers the clock frequency or completely disable the clock, and sets the CPU in the sleep mode, in order to reduce the CPU's consumed power. With the CPU in sleep mode, no program is executed at all by the CPU regardless of whether the clock frequency is reduced or the clock is completely disabled.
An idle state of the CPU which is detectable by the conventional sleep mode function is just the CPU idle when an application program becomes ready for a keyboard input. When an application program waits for the completion of the operation of an I/O device other than the keyboard, therefore, the CPU cannot be set in the sleep mode even if the CPU is in the idle state.
In this case, the CPU power is wasted for the time needed for that I/O device to complete the operation, In particular, when an application program waits to be informed of the completion of the operation from a slow I/O device or from a high-intelligent I/O device such as a bus master, the CPU cannot be set in the sleep mode even if the CPU is in the idle state for a relatively long time. This increases the wasteful CPU power consumed.
As apparent from the above, the conventional sleep mode function cannot accomplish sufficient power saving due to few triggers to set the CPU in the sleep mode.
The BIOS can control the system hardware only under a specific operating system (OS) which is associated with that BIOS. Whether or not the sleep mode function works properly therefore depends on the OS environment greatly, and the sleep mode function may not work at all depending on the OS in use.
Further, the conventional sleep mode function takes time to wake up the CPU from the sleep mode.
When some system event occurs while the CPU is in a sleep mode, the system hardware restarts supplying a clock to the CPU or increases the clock frequency. Even if the clock is set back to the normal state, the CPU cannot start operating immediately. Particularly, the recent high-performance microprocessors equipped with a PLL (Phase Locked Loop), such as Intel 486 series microprocessors that have been developed, manufactured and sold by Intel Corporation holds the start of the CPU operation for a given period (e.g., about 1 ms) after switching the clock for the following reason.
This type of microprocessor has an internal oscillator including the PLL, which generates a fast clock synchronous with an externally supplied clock, and uses this fast clock to accomplish its fast operation. For the microprocessor to operate properly thus requires that the external supplied clock have a stable phase. Otherwise the synchronous operation of the PLL becomes unreliable. If the conventional sleep mode function that switches the CPU clock is employed in a system which uses a PLL-incorporated microprocessor as a CPU, therefore, it takes time to return from the sleep mode, thus deteriorating the system performance.